import java.util.HashMap;
import java.util.Map;

/*
 * @lc app=leetcode.cn id=454 lang=java
 *
 * [454] 四数相加 II
 */

// @lc code=start
class Solution {
    public int fourSumCount(int[] nums1, int[] nums2, int[] nums3, int[] nums4) {
        Map<Integer,Integer> s12=new HashMap<>();
        for(int i=0;i<nums1.length;i++){
            for(int j=0;j<nums2.length;j++){
                int key=nums1[i]+nums2[j];
                s12.put(key, s12.getOrDefault(key,0)+1);
            }
        }
        int count=0;
        for(int k=0;k<nums3.length;k++){
            for(int l=0;l<nums4.length;l++){
                int remain=0-nums3[k]-nums4[l];
                if(s12.containsKey(remain)){
                    count+=s12.get(remain);
                }
            }
        }
        return count;
    }
}
// @lc code=end

